package com.itzzj.common.config;

import com.google.code.kaptcha.impl.DefaultKaptcha;
import com.google.code.kaptcha.util.Config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Properties;

/**
 * 图形验证码配置类
 */
@Configuration
public class KaptchaConfig {

    @Bean
    public DefaultKaptcha defaultKaptcha(){
        DefaultKaptcha kaptcha = new DefaultKaptcha();
        Properties prop = new Properties();
        // 边框
        prop.setProperty("kaptcha.border","no");
        // 字体颜色
        prop.setProperty("kaptcha.textproducer.font.color","blue");
        // 图片宽度
        prop.setProperty("kaptcha.image.width","120");
        // 图片高度
        prop.setProperty("kaptcha.image.height","40");
        // 字体大小
        prop.setProperty("kaptcha.textproducer.font.size","20");
        // session key
        prop.setProperty("kaptcha.session.key","kaptcha");
        // 验证码长度
        prop.setProperty("kaptcha.textproducer.char.length","4");
        // 字体
        prop.setProperty("kaptcha.textproducer.font.names","宋体,楷体,微软雅黑");
        // 文字间隔
        prop.setProperty("kaptcha.textproducer.char.space","10");
        // 去除干扰线
        prop.setProperty("kaptcha.noise.impl", "com.google.code.kaptcha.impl.NoNoise");
        // 图片样式-阴影
        prop.setProperty("kaptcha.obscurificator.impl", "com.google.code.kaptcha.impl.ShadowGimpy");
        // 背景结束颜色渐变，白色
        prop.setProperty("kaptcha.background.clear.to","white");
        Config config = new Config(prop);
        kaptcha.setConfig(config);
        return kaptcha;
    }

}















































